Module isotope::value[][src]

Expand description

isotope values

Re-exports

pub use super::*;
pub use Variance::*;

Modules

relationships

Relationships between instants

test

Utilities for testing Value implementations and similar

Structs

Abstract

An abstract application

BOOL

The type of booleans, as a ValId

Bool

The type of booleans

Borrowed

A borrow of a value

Consistent

A consistent constraint set

Constraint

A constraint on an instant

Dependency

Dependency metadata for a symbol

EMPTY

The empty type, as a ValId

Empty

The empty type

FALSE

The false boolean constant

FREE_LIFETIME

The unconstrainted lifetime

FunctionalLinearity

A function type’s linearities

INFTY

The instant at infinity

Infty

The instant at infinity

Lambda

A lambda function

Lifetime

The type of instants which satisfy a given constraint

Linearity

Substructurality requirements on a value

Match

A match between two types

NAT

The type of naturals, as a ValId

NIL

The unique value of the unit type, as a ValId

Nat

The type of natural numbers

Nil

The unique value of the unit type

PROP

The universe of propositions

Pi

A pi type

Reference

Reference types

Relationship

A relationship between relations

SET

The universe of sets

SMALL_NATS

The first 16 integers

Sexpr

An S-expression

Symbol

An isotope symbol

SymbolDesc

A descriptor for an isotope symbol

SymbolId

An isotope symbol ID

SymbolSet

A set of symbols, each assigned dependency metadata

TRUE

The true boolean constant

TYPE

The universe of types

UNIT

The unit type, as a ValId

Unit

The unit type

Universe

A leveled typing universe

Usage

Usage of a value

ValId

A rain value

ZERO

The instant at zero

Zero

The instant at zero, i.e. initialization

Enums

Application

An application

Constraints

A set of constraints on a value being valid

ValueEnum

The enumeration of possible isotope values

Variance

The variance of a type binding

Constants

BASIC_RELATIONSHIPS

Basic relationships

INCONSISTENT_MATCH

An inconsistent match

NO_CONSTRAINT

The trivial constraint

NO_CONSTRAINTS

The empty constraint set

NO_CONSTRAINTS_CONSISTENT

The empty consistent constraint set

RELATIONSHIPS

All relationships

VARIANCES

A list of all possible variances

Traits

Typed

Something with a type

Value

The trait implemented by all isotope values

Functions

direct_deps

Iterate over a value’s direct dependencies, along with their linearity

visit_deps

Visit a value’s dependencies relative to a dependency filter